package com.fengze.shop.common.config;

import lombok.extern.slf4j.Slf4j;

import java.io.Serializable;

/**
 * 系统配置文件
 *
 * @author zhanglingsi
 *         createTime: 2016/11/23 09:33
 */
@Slf4j
public class CommonConfig implements Serializable {

    private ModuleConfig moduleConfig;

    /**
     * 构造方法初始化 配置项
     * @param moduleConfig
     */
    public CommonConfig(ModuleConfig moduleConfig) {
        this.moduleConfig = moduleConfig;
    }

    public Integer getIntValue(String configItemName, Integer defaultValue) {
        Item item = moduleConfig.getItem(configItemName);

        return item != null ? Integer.valueOf(item.getValue()) : defaultValue;
    }

    public String getStringValue(String configItemName, String defaultValue) {
        Item item = moduleConfig.getItem(configItemName);

        return item != null ? item.getValue() : defaultValue;
    }


    public String[] getArrayValue(String configItemName) {
        ArrayItem arrayItem = moduleConfig.getArrayItem(configItemName);
        return arrayItem != null ? arrayItem.getValueList() : null;
    }

    public Boolean getBooleanValue(String configItemName, Boolean defaultValue){
        Item item = moduleConfig.getItem(configItemName);
        return null != item ? Boolean.valueOf(item.getValue()) : Boolean.FALSE;
    }
}
